In [1]:
# Confirm CUDA is True or YOLO will run on CPU which is much slower than GPU
import torch
#print("Python:", os.sys.version)
print("Torch:", torch.__version__)
print("CUDA available:", torch.cuda.is_available())
if torch.cuda.is_available():
    print("Device:", torch.cuda.get_device_name(0))
Torch: 2.5.1+cu121
CUDA available: True
Device: NVIDIA GeForce RTX 2070 SUPER
In [2]:
# CUDA is false whenever python version > 3.10.20 had to force a new environment & kernel 
import os
from ultralytics import YOLO

print("Python version:", os.sys.version)
print("Torch version:", torch.__version__)
print("CUDA available:", torch.cuda.is_available())
if torch.cuda.is_available():
    print("CUDA device:", torch.cuda.get_device_name(0))
else:
    print("Running on CPU")
Python version: 3.10.20 | packaged by Anaconda, Inc. | (main, Jun 11 2026, 15:13:20) [MSC v.1942 64 bit (AMD64)]
Torch version: 2.5.1+cu121
CUDA available: True
CUDA device: NVIDIA GeForce RTX 2070 SUPER
In [10]:
# Check if file path contains yaml file since moving device 
# Almost forgot the file path on this device INSIDE the yaml file as well
DATASET = r"D:\Independent_Project\Raw_Data_Graph_images\data.yaml"

print("\nChecking dataset path...")
if os.path.exists(DATASET):
    print(" data.yaml found:", DATASET)
else:
    print("data.yaml NOT found — check the path")
    raise FileNotFoundError(DATASET)
Checking dataset path...
 data.yaml found: D:\Independent_Project\Raw_Data_Graph_images\data.yaml
In [11]:
# Check or load YOLO model n is for nano
print("\nLoading YOLOv11 model...")
model = YOLO("yolo11n.pt")   # Auto download if missing
print("Model loaded")
Loading YOLOv11 model...
Model loaded
In [12]:
import time

print("\nStarting YOLOv11 training...")
start_time = time.time()

results = model.train(
    data=DATASET,
    epochs=50,
    imgsz=640,
    batch=8,
    name="raw_graph_classifier",
    device=0  # force to use GPU if available (auto would otherwise reluctantly use CPU)
)

end_time = time.time()
print(f"\nTraining completed in {(end_time - start_time)/60:.2f} minutes")
Starting YOLOv11 training...
New https://pypi.org/project/ultralytics/8.4.104 available  Update with 'pip install -U ultralytics'
Ultralytics 8.4.87  Python-3.10.20 torch-2.5.1+cu121 CUDA:0 (NVIDIA GeForce RTX 2070 SUPER, 8192MiB)
engine\trainer: agnostic_nms=False, amp=True, angle=1.0, augment=False, auto_augment=randaugment, batch=8, bgr=0.0, box=7.5, cache=False, cfg=None, classes=None, close_mosaic=10, cls=0.5, cls_pw=0.0, compile=False, conf=None, copy_paste=0.0, copy_paste_mode=flip, cos_lr=False, cutmix=0.0, data=D:\Independent_Project\Raw_Data_Graph_images\data.yaml, degrees=0.0, deterministic=True, device=0, dfl=1.5, dis=6.0, distill_model=None, dnn=False, dropout=0.0, dynamic=False, embed=None, end2end=None, epochs=50, erasing=0.4, exist_ok=False, fliplr=0.5, flipud=0.0, format=torchscript, fraction=1.0, freeze=None, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, imgsz=640, iou=0.7, keras=False, kobj=1.0, line_width=None, lr0=0.01, lrf=0.01, mask_ratio=4, max_det=300, mixup=0.0, mode=train, model=yolo11n.pt, momentum=0.937, mosaic=1.0, multi_scale=0.0, name=raw_graph_classifier-2, nbs=64, nms=False, opset=None, optimize=False, optimizer=auto, overlap_mask=True, patience=100, perspective=0.0, plots=True, pose=12.0, pretrained=True, profile=False, project=None, quantize=None, rect=False, resume=False, retina_masks=False, rle=1.0, save=True, save_conf=False, save_crop=False, save_dir=C:\Users\siane\runs\detect\raw_graph_classifier-2, save_frames=False, save_json=False, save_period=-1, save_txt=False, scale=0.5, seed=0, shear=0.0, show=False, show_boxes=True, show_conf=True, show_labels=True, simplify=True, single_cls=False, source=None, split=val, stream_buffer=False, task=detect, time=None, tracker=tracktrack.yaml, translate=0.1, val=True, verbose=True, vid_stride=1, visualize=False, warmup_bias_lr=0.1, warmup_epochs=3.0, warmup_momentum=0.8, weight_decay=0.0005, workers=8, workspace=None
Overriding model.yaml nc=80 with nc=3

                   from  n    params  module                                       arguments                     
  0                  -1  1       464  ultralytics.nn.modules.conv.Conv             [3, 16, 3, 2]                 
  1                  -1  1      4672  ultralytics.nn.modules.conv.Conv             [16, 32, 3, 2]                
  2                  -1  1      6640  ultralytics.nn.modules.block.C3k2            [32, 64, 1, False, 0.25]      
  3                  -1  1     36992  ultralytics.nn.modules.conv.Conv             [64, 64, 3, 2]                
  4                  -1  1     26080  ultralytics.nn.modules.block.C3k2            [64, 128, 1, False, 0.25]     
  5                  -1  1    147712  ultralytics.nn.modules.conv.Conv             [128, 128, 3, 2]              
  6                  -1  1     87040  ultralytics.nn.modules.block.C3k2            [128, 128, 1, True]           
  7                  -1  1    295424  ultralytics.nn.modules.conv.Conv             [128, 256, 3, 2]              
  8                  -1  1    346112  ultralytics.nn.modules.block.C3k2            [256, 256, 1, True]           
  9                  -1  1    164608  ultralytics.nn.modules.block.SPPF            [256, 256, 5]                 
 10                  -1  1    249728  ultralytics.nn.modules.block.C2PSA           [256, 256, 1]                 
 11                  -1  1         0  torch.nn.modules.upsampling.Upsample         [None, 2, 'nearest']          
 12             [-1, 6]  1         0  ultralytics.nn.modules.conv.Concat           [1]                           
 13                  -1  1    111296  ultralytics.nn.modules.block.C3k2            [384, 128, 1, False]          
 14                  -1  1         0  torch.nn.modules.upsampling.Upsample         [None, 2, 'nearest']          
 15             [-1, 4]  1         0  ultralytics.nn.modules.conv.Concat           [1]                           
 16                  -1  1     32096  ultralytics.nn.modules.block.C3k2            [256, 64, 1, False]           
 17                  -1  1     36992  ultralytics.nn.modules.conv.Conv             [64, 64, 3, 2]                
 18            [-1, 13]  1         0  ultralytics.nn.modules.conv.Concat           [1]                           
 19                  -1  1     86720  ultralytics.nn.modules.block.C3k2            [192, 128, 1, False]          
 20                  -1  1    147712  ultralytics.nn.modules.conv.Conv             [128, 128, 3, 2]              
 21            [-1, 10]  1         0  ultralytics.nn.modules.conv.Concat           [1]                           
 22                  -1  1    378880  ultralytics.nn.modules.block.C3k2            [384, 256, 1, True]           
 23        [16, 19, 22]  1    431257  ultralytics.nn.modules.head.Detect           [3, 16, None, [64, 128, 256]] 
YOLO11n summary: 182 layers, 2,590,425 parameters, 2,590,409 gradients, 6.4 GFLOPs

Transferred 448/499 items from pretrained weights
Freezing layer 'model.23.dfl.conv.weight'
AMP: running Automatic Mixed Precision (AMP) checks...
AMP: checks passed 
train: Fast image access  (ping: 0.20.2 ms, read: 122.342.1 MB/s, size: 14.3 KB)
train: Scanning D:\Independent_Project\Raw_Data_Graph_images\labels\train... 112 images, 48 backgrounds, 0 corrupt: 100% ━━━━━━━━━━━━ 160/160 1.3Kit/s 0.1s.3s
train: New cache created: D:\Independent_Project\Raw_Data_Graph_images\labels\train.cache
WARNING val: Slow image access detected (ping: 0.30.4 ms, read: 29.618.1 MB/s, size: 13.1 KB). Use local storage instead of remote/mounted storage for better performance. See https://docs.ultralytics.com/guides/model-training-tips/
val: Scanning D:\Independent_Project\Raw_Data_Graph_images\labels\val... 27 images, 13 backgrounds, 0 corrupt: 100% ━━━━━━━━━━━━ 40/40 371.1it/s 0.1s7s
val: New cache created: D:\Independent_Project\Raw_Data_Graph_images\labels\val.cache
optimizer: 'optimizer=auto' found, ignoring 'lr0=0.01' and 'momentum=0.937' and determining best 'optimizer', 'lr0' and 'momentum' automatically... 
optimizer: AdamW(lr=0.001429, momentum=0.9) with parameter groups 81 weight(decay=0.0), 88 weight(decay=0.0005), 87 bias(decay=0.0)
Plotting labels to C:\Users\siane\runs\detect\raw_graph_classifier-2\labels.jpg... 
Image sizes 640 train, 640 val
Using 8 dataloader workers
Logging results to C:\Users\siane\runs\detect\raw_graph_classifier-2
Starting training for 50 epochs...

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       1/50      1.22G      2.375      4.833      1.842         25        640: 100% ━━━━━━━━━━━━ 20/20 3.8it/s 5.2s0.1s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 1.2it/s 2.5s1.8ss
                   all         40         54    0.00454      0.824     0.0496     0.0113

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       2/50      1.29G      2.132      3.849      1.603         26        640: 100% ━━━━━━━━━━━━ 20/20 10.6it/s 1.9s0.1s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 11.9it/s 0.3s.8s
                   all         40         54    0.00328      0.441      0.056     0.0128

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       3/50      1.29G      2.056       3.15      1.601         50        640: 100% ━━━━━━━━━━━━ 20/20 10.5it/s 1.9s0.1s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.3it/s 0.2s.3s
                   all         40         54    0.00444      0.696      0.115     0.0355

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       4/50      1.29G      2.012      3.206      1.614         27        640: 100% ━━━━━━━━━━━━ 20/20 10.8it/s 1.9s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.6it/s 0.2s.2s
                   all         40         54    0.00356      0.304      0.102     0.0396

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       5/50      1.29G      1.988      2.948      1.515         28        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.0it/s 0.2s.2s
                   all         40         54      0.851      0.098      0.172     0.0695

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       6/50      1.29G      1.906       2.86      1.485         27        640: 100% ━━━━━━━━━━━━ 20/20 11.7it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 13.6it/s 0.2s.3s
                   all         40         54      0.706      0.245      0.215      0.097

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       7/50      1.29G      1.913      2.656      1.494         23        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 11.7it/s 0.3s.3s
                   all         40         54      0.749      0.225      0.225     0.0859

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       8/50      1.29G      1.898      2.485      1.526         26        640: 100% ━━━━━━━━━━━━ 20/20 11.7it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 13.9it/s 0.2s.3s
                   all         40         54       0.73      0.255      0.254      0.103

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
       9/50      1.29G      1.856      2.578      1.459         37        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.2it/s 0.2s.3s
                   all         40         54      0.744      0.265      0.226     0.0994

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      10/50      1.29G      1.705      2.415      1.422         21        640: 100% ━━━━━━━━━━━━ 20/20 10.9it/s 1.8s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.5it/s 0.2s.2s
                   all         40         54      0.723      0.228      0.194     0.0709

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      11/50      1.29G      1.781      2.469      1.417         30        640: 100% ━━━━━━━━━━━━ 20/20 11.4it/s 1.8s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.4it/s 0.2s.3s
                   all         40         54      0.409       0.51      0.359      0.146

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      12/50      1.29G       1.72      2.167      1.397         21        640: 100% ━━━━━━━━━━━━ 20/20 11.7it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.7it/s 0.2s.2s
                   all         40         54       0.33        0.5      0.529      0.222

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      13/50      1.29G       1.68      2.084      1.328         32        640: 100% ━━━━━━━━━━━━ 20/20 11.2it/s 1.8s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.6it/s 0.2s.2s
                   all         40         54      0.671       0.45      0.476      0.168

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      14/50      1.29G      1.698      2.296      1.405         18        640: 100% ━━━━━━━━━━━━ 20/20 11.3it/s 1.8s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.6it/s 0.2s.2s
                   all         40         54      0.372      0.775      0.384      0.153

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      15/50      1.29G       1.67      2.117      1.371         34        640: 100% ━━━━━━━━━━━━ 20/20 10.6it/s 1.9s.1ss
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 9.1it/s 0.3s1.2s
                   all         40         54      0.642       0.51      0.594      0.256

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      16/50      1.29G      1.612      1.939      1.345         15        640: 100% ━━━━━━━━━━━━ 20/20 10.2it/s 2.0s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 12.3it/s 0.2s.3s
                   all         40         54      0.529      0.539      0.478      0.175

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      17/50      1.29G      1.619      1.988       1.33         28        640: 100% ━━━━━━━━━━━━ 20/20 10.5it/s 1.9s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.7it/s 0.2s.2s
                   all         40         54        0.5        0.5      0.411       0.14

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      18/50      1.29G      1.672      2.089      1.359         26        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.1s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.5it/s 0.2s.2s
                   all         40         54      0.395      0.497      0.489      0.204

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      19/50      1.29G       1.61      2.122      1.292         14        640: 100% ━━━━━━━━━━━━ 20/20 11.1it/s 1.8s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.6it/s 0.2s.2s
                   all         40         54      0.383        0.5      0.448      0.233

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      20/50      1.29G      1.609      2.027      1.295         24        640: 100% ━━━━━━━━━━━━ 20/20 11.7it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.4it/s 0.2s.3s
                   all         40         54      0.582      0.392      0.543      0.196

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      21/50      1.29G       1.58      1.914      1.342         23        640: 100% ━━━━━━━━━━━━ 20/20 11.8it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.4it/s 0.2s.2s
                   all         40         54      0.563      0.706      0.702      0.308

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      22/50      1.29G      1.623      1.949      1.361         19        640: 100% ━━━━━━━━━━━━ 20/20 11.9it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.6it/s 0.2s.2s
                   all         40         54      0.396      0.765       0.71      0.334

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      23/50      1.29G      1.587      1.805      1.367         40        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.7it/s 0.2s.2s
                   all         40         54      0.604      0.556      0.484      0.148

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      24/50      1.29G      1.498      1.885      1.325         24        640: 100% ━━━━━━━━━━━━ 20/20 10.4it/s 1.9s.1ss
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 11.3it/s 0.3s.8s
                   all         40         54      0.231      0.569       0.36      0.138

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      25/50      1.29G      1.503      1.825      1.309         17        640: 100% ━━━━━━━━━━━━ 20/20 8.5it/s 2.3s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 11.9it/s 0.3s.3s
                   all         40         54      0.549      0.794      0.692      0.279

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      26/50      1.29G      1.456      1.699      1.258         28        640: 100% ━━━━━━━━━━━━ 20/20 10.4it/s 1.9s.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 11.1it/s 0.3s.3s
                   all         40         54      0.495      0.696      0.738      0.271

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      27/50      1.29G      1.474       1.66      1.262         24        640: 100% ━━━━━━━━━━━━ 20/20 11.3it/s 1.8s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 12.7it/s 0.2s.2s
                   all         40         54      0.378      0.804      0.713      0.296

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      28/50      1.29G      1.474      1.649      1.235         25        640: 100% ━━━━━━━━━━━━ 20/20 11.7it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.3it/s 0.2s.2s
                   all         40         54      0.824       0.51      0.699       0.32

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      29/50      1.29G      1.468      1.661      1.274         44        640: 100% ━━━━━━━━━━━━ 20/20 11.8it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.3it/s 0.2s.2s
                   all         40         54      0.673      0.404       0.49       0.23

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      30/50      1.29G      1.454      1.745      1.225         10        640: 100% ━━━━━━━━━━━━ 20/20 11.9it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.1it/s 0.2s.2s
                   all         40         54      0.441      0.804       0.56      0.263

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      31/50      1.29G      1.491      1.722      1.269         22        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.4it/s 0.2s.2s
                   all         40         54      0.506      0.572      0.503      0.208

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      32/50      1.29G      1.425      1.707      1.265         12        640: 100% ━━━━━━━━━━━━ 20/20 12.3it/s 1.6s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.7it/s 0.2s.2s
                   all         40         54      0.616      0.615      0.506      0.218

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      33/50      1.29G       1.37      1.574       1.24         28        640: 100% ━━━━━━━━━━━━ 20/20 11.8it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.2it/s 0.2s.2s
                   all         40         54       0.71      0.637      0.675      0.252

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      34/50      1.29G      1.413      1.571      1.198         23        640: 100% ━━━━━━━━━━━━ 20/20 12.0it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.9it/s 0.2s.2s
                   all         40         54      0.774      0.618      0.694      0.286

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      35/50      1.29G      1.282       1.54      1.178         26        640: 100% ━━━━━━━━━━━━ 20/20 11.8it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 13.5it/s 0.2s.2s
                   all         40         54      0.583      0.773      0.747      0.381

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      36/50      1.29G      1.292      1.487      1.177         17        640: 100% ━━━━━━━━━━━━ 20/20 12.1it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.0it/s 0.2s.2s
                   all         40         54      0.722      0.597      0.753      0.332

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      37/50      1.29G      1.367      1.559      1.205         16        640: 100% ━━━━━━━━━━━━ 20/20 12.0it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.8it/s 0.2s.2s
                   all         40         54      0.817      0.625      0.724      0.319

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      38/50      1.29G      1.298      1.576      1.196         20        640: 100% ━━━━━━━━━━━━ 20/20 11.5it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.7it/s 0.2s.2s
                   all         40         54      0.844      0.663      0.737      0.279

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      39/50      1.29G      1.361      1.465      1.207         10        640: 100% ━━━━━━━━━━━━ 20/20 11.5it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.8it/s 0.2s.2s
                   all         40         54      0.733      0.833      0.812      0.371

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      40/50      1.29G      1.336      1.434      1.211         15        640: 100% ━━━━━━━━━━━━ 20/20 12.1it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.0it/s 0.2s.2s
                   all         40         54      0.869      0.765      0.849      0.344
Closing dataloader mosaic

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      41/50      1.29G      1.264      1.664      1.182         11        640: 100% ━━━━━━━━━━━━ 20/20 3.6it/s 5.5s<0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.1it/s 0.2s.2s
                   all         40         54      0.612      0.814      0.752      0.316

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      42/50      1.29G      1.262      1.637      1.206          7        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.3it/s 0.2s.3s
                   all         40         54      0.671      0.762      0.736      0.295

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      43/50      1.29G      1.265      1.606      1.202         12        640: 100% ━━━━━━━━━━━━ 20/20 11.5it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.2it/s 0.2s.2s
                   all         40         54      0.632      0.745      0.744      0.329

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      44/50      1.29G      1.139      1.498      1.124          9        640: 100% ━━━━━━━━━━━━ 20/20 12.3it/s 1.6s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.0it/s 0.2s.2s
                   all         40         54      0.616      0.759      0.753      0.388

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      45/50      1.29G      1.249      1.583      1.167          8        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.6it/s 0.2s.2s
                   all         40         54      0.838      0.677      0.827      0.405

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      46/50      1.29G      1.168      1.512       1.17         11        640: 100% ━━━━━━━━━━━━ 20/20 12.2it/s 1.6s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.1it/s 0.2s.2s
                   all         40         54      0.845      0.728      0.828      0.397

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      47/50      1.29G      1.166      1.499      1.138          6        640: 100% ━━━━━━━━━━━━ 20/20 11.9it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.3it/s 0.2s.2s
                   all         40         54      0.811      0.714      0.825      0.376

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      48/50      1.29G      1.187      1.479       1.14          9        640: 100% ━━━━━━━━━━━━ 20/20 11.9it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 15.3it/s 0.2s.2s
                   all         40         54      0.841      0.686      0.828      0.384

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      49/50      1.29G      1.188      1.481      1.184          9        640: 100% ━━━━━━━━━━━━ 20/20 11.6it/s 1.7s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 14.4it/s 0.2s.2s
                   all         40         54      0.892      0.632      0.825      0.351

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      50/50      1.29G      1.227      1.511      1.144         12        640: 100% ━━━━━━━━━━━━ 20/20 12.1it/s 1.6s0.2s
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 12.7it/s 0.2s.2s
                   all         40         54      0.836      0.676      0.823      0.371

50 epochs completed in 0.038 hours.
Optimizer stripped from C:\Users\siane\runs\detect\raw_graph_classifier-2\weights\last.pt, 5.4MB
Optimizer stripped from C:\Users\siane\runs\detect\raw_graph_classifier-2\weights\best.pt, 5.4MB

Validating C:\Users\siane\runs\detect\raw_graph_classifier-2\weights\best.pt...
Ultralytics 8.4.87  Python-3.10.20 torch-2.5.1+cu121 CUDA:0 (NVIDIA GeForce RTX 2070 SUPER, 8192MiB)
YOLO11n summary (fused): 101 layers, 2,582,737 parameters, 0 gradients, 6.3 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100% ━━━━━━━━━━━━ 3/3 6.1it/s 0.5s0.3s
                   all         40         54      0.838      0.677      0.826      0.406
             dry_spill          2          3      0.893          1      0.995      0.439
             wet_spill         26         51      0.783      0.353      0.658      0.373
Speed: 2.0ms preprocess, 1.8ms inference, 0.0ms loss, 1.0ms postprocess per image
Results saved to C:\Users\siane\runs\detect\raw_graph_classifier-2

Training completed in 2.43 minutes
In [ ]: